iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 23
0
自我挑戰組

在Android Studio 3.x版開發Android系統的開發記事系列 第 23

在Android Studio 3.x版開發Android系統的開發記事-如何實做書籍管理系統(五)

  • 分享至 

  • xImage
  •  
今天,要來討論的是將已存在的書籍資料,進行編輯、更新資料的動作。我們再復習一下,編輯是要從那個地方觸發。是從在ListView的列表中,在onItemClick事件中來觸發。請參考下述程式碼:
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

    //取得按下ListView的那個Item的值。
    String strbookname = adapterView.getItemAtPosition(i).toString();

    //按下Item時,要呼叫編輯的Activity,利用Intent物件帶參數過去。
    Intent it = new Intent();
    it= new Intent(this,frm_book_edit.class);

    it.putExtra("pname",strbookname);

    startActivity(it);

    //關閉本身的Activity。
    this.finish();

}
接下來,我們先來看看要如何編輯、更新書籍資料。在原來的專案,再增加一個Empty Activity,Activity名稱,取名為「frm_book_edit」。再拉出四個TextView、二個EditVIew、一個Spinner及二個Button,來當做書籍名稱、簡介的輸入欄位及分類的下拉式選項。按下更新的Button,再呼叫api來更新資料庫,再回到列表的Activity。順序來排列出來。如下圖所示:

https://ithelp.ithome.com.tw/upload/images/20181029/20000953HbIBrjuQbV.jpg

https://ithelp.ithome.com.tw/upload/images/20181029/20000953keDCOzGEE3.jpg

https://ithelp.ithome.com.tw/upload/images/20181029/20000953ruxEwi0GDs.jpg
在編輯更新的程式。也是要呼叫的API,有三段。一個是將分類的資料,跟Spinner元件結合起來,才可以下拉式的方式來選取此書籍的分類。第二段,是取得原來的資料,並且要資料顯示在對應的欄位。最後一段,就是要更新的書籍名稱、簡介、所屬分類、及更新資料的id,以Http POST的方式更新在伺服器的資料庫。

第一段的API,就不介紹了。請參考之前的文章說明,我們先來看看呼叫第二段API,取得原來的資料,是用GET的方式,將書籍名稱帶回PHP的網頁,再查詢出符合的資料。請參考下述完整的程式碼:

_api_getbookinfobyname.php

<?php

	//引用資料庫連接檔案
    include("conn/_db_Config.php");

	//取得書籍名稱
	$pname = $_GET["pname"];

	//查詢書籍資料的SQL語法
	$sql = "select tbookinfo.*,ttaginfo.ctag_name from tbookinfo left join ttaginfo on tbookinfo.ctag_id = ttaginfo.ctag_id ".
			"WHERE tbookinfo.cbook_name ='".$pname."'";
	

	//執行SQL語法,並且將資料轉成array
    $res = $db->query($sql);
    $arytags = array();

    while ($row = $res->fetch_assoc()) {
    	$arytags[] = $row;
    }    

	//輸出成JSON字串,要加JSON_UNESCAPED_UNICODE,中文字才不會變成亂碼
    echo json_encode($arytags, JSON_UNESCAPED_UNICODE);
?>
後續,就是要了解,在Android要如何連接在一起,如何要取得資料再回填到原來的欄位元件。

上一篇
在Android Studio 3.x版開發Android系統的開發記事-如何實做書籍管理系統(四)
下一篇
在Android Studio 3.x版開發Android系統的開發記事-如何實做書籍管理系統(六)
系列文
在Android Studio 3.x版開發Android系統的開發記事30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言